Live functional programming with typed holes
نویسندگان
چکیده
منابع مشابه
Typed Contracts for Functional Programming
A robust software component fulfills a contract: it expects data satisfying a certain property and promises to return data satisfying another property. The object-oriented community uses the design-by-contract approach extensively. Proposals for language extensions that add contracts to higher-order functional programming have appeared recently. In this paper we propose an embedded domain-speci...
متن کاملAutomation for Dependently Typed Functional Programming
Writing dependently typed functional programs that capture non-trivial program properties, such as those involving membership, ordering and non-linear arithmetic, is difficult in current system due to lack of proof automation. We identify and discuss proof patterns that occur when programming with dependent types and detail how the automation of such patterns allow us to work more comfortably w...
متن کاملFunctional programming with dependently-typed higher-order data
This paper explores a new point in the design space of functional programming: functional programming with dependently typed higher-order data structures described in the logical framework LF. This allows us to program with proofs. The contributions of this paper are twofold: First, we present a syntax-directed bidirectional type system that distinguishes between dependently typed data and comp...
متن کاملSupporting dependently typed functional programming with proof automation and testing
Dependent types can be used to capture useful properties about programs at compile time. However, developing dependently typed programs can be difficult in current systems. Capturing interesting program properties usually requires the user to write proofs, where constructing the latter can be both a difficult and tedious process. Additionally, finding and fixing errors in program scripts can be...
متن کاملIn the Age of Web: Typed Functional-First Programming Revisited
Most programming languages were designed before the age of web. This matters because the web changes many assumptions that typed functional language designers take for granted. For example, programs do not run in a closed world, but must instead interact with (changing and likely unreliable) services and data sources, communication is often asynchronous or event-driven, and programs need to int...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
ژورنال
عنوان ژورنال: Proceedings of the ACM on Programming Languages
سال: 2019
ISSN: 2475-1421
DOI: 10.1145/3290327